The present invention relates to voice processing systems for supporting one or more voice processing applications.
Voice processing systems are widely used in call centres and other environments to manage interactions with customers, thereby reducing the number of relatively expensive human agents required to service customer inquiries, whilst at the same time providing improved responsiveness for callers. The vast majority of voice processing applications developed for use in such situations are still based primarily on a relatively simple set of operations, including playing the caller a prompt (typically a question, perhaps asking them to specify the particular service in which they are interested), receiving a dual tone multiple frequency (DTMF) key input from the caller in response to such prompt, and then performing some action in response to the caller selection. Examples of possible actions include playing a prompt to obtain further DTMF input, recording a voice message from the caller, transferring the caller to another extension, or playing some information to the caller, such as an account balance, or timetable information (this may require the voice processing system to interact with a separate computer database). The prompts and other information played out in audio form to callers typically comprise one or more pre-recorded audio segments which can be assembled together as required.
It will be appreciated that an enormous range of voice processing applications have been developed in the industry, both inbound and outbound. One problem with traditional voice processing systems is that they have often each provided their own specific voice application environment. This has had several unfortunate consequences, for example it is difficult to port voice applications from one voice processing system to another, whilst at the same time few voice processing systems are properly scalable across the whole range of potential operation (from handling a few lines up to several hundred). Thus a user having a heterogeneous system environment is prevented from flexibly deploying a single voice processing application across all machines.
The provision of a specialised voice application environment also makes voice processing applications difficult to integrate with general computing business systems in an organisation, and in addition voice processing applications are often harder and more expensive to develop (since programmers must learn about the specialised environment). These problems are becoming ever more acute with the rapidly increasing the number of voice processing systems employed in customer situations, and the need to provide good integration between the voice processing applications and the overall management information systems.
United Kingdom patent application 9719942.6, filed 19 Sep. 1997, describes a voice processing application environment, based on the object-oriented (OO) Java programming language. In particular, this document describes the provision of a set of telephony Java Beans (ie programming components) which can be readily integrated using standard Java program development tools into general business applications to provide straightforward access to telephony functionality on any platform. A Java-based voice processing architecture has also been announced by Syntellect Inc (see http://www.syntellect.com/vista.htm). EP-A 658855 discloses the integration of a multimedia facility within an objected oriented environment, whereby selection of an object by a user of an audio view can result in output for example using a text to speech facility.
An important feature of the above-mentioned UK patent application is the ability to render details of the voice processing system effectively transparent to the application, thereby providing full platform independence. It is difficult to provide an efficient interface between the application and the telephony system in order to allow the application access to telephone functionality, without building into the application some knowledge of the underlying voice processing system, and thereby compromising flexibility. One particular complication for example involves playing a prompt, due to the variations in the way that certain information such as dates and times are handled in such situations.